package com.lzc.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 数据迁移进度记录表
 */
@TableName(value = "migration_progress")
@Data
public class MigrationProgress {
    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 迁移任务名称
     */
    private String taskName;

    /**
     * 源表名称
     */
    private String sourceTable;

    /**
     * 目标表名称
     */
    private String targetTable;

    /**
     * 已处理的最大ID
     */
    private Long maxProcessedId;

    /**
     * 已处理的记录数
     */
    private Long processedCount;

    /**
     * 总记录数
     */
    private Long totalCount;

    /**
     * 批处理大小
     */
    private Integer batchSize;

    /**
     * 迁移状态：RUNNING-运行中，COMPLETED-已完成，FAILED-失败
     */
    private String status;

    /**
     * 开始时间
     */
    private LocalDateTime startTime;

    /**
     * 结束时间
     */
    private LocalDateTime endTime;

    /**
     * 错误信息
     */
    private String errorMessage;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;
}
